-
Notifications
You must be signed in to change notification settings - Fork 71
Refonte Trésorie > Devis - Ajout / Edition #2016
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
resolves #2002 |
686683e to
15cc2a5
Compare
556dddb to
0034d1f
Compare
sources/AppBundle/Accounting/Model/Repository/InvoicingRepository.php
Outdated
Show resolved
Hide resolved
sources/AppBundle/Controller/Admin/Accounting/Quotation/EditQuotationAction.php
Outdated
Show resolved
Hide resolved
0034d1f to
eef10b5
Compare
eef10b5 to
257149a
Compare
stakovicz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gros boulot ! Bravo !
Il reste aussi des commentaires non résolus.
sources/AppBundle/Controller/Admin/Accounting/Quotation/EditQuotationAction.php
Outdated
Show resolved
Hide resolved
9f239ee to
7e2ca90
Compare
|
@stakovicz @Mopolo j'ai implémenté une solution plus propre que le "wait Xs" dans les tests behat. Je retente l'assertion toutes les 100ms pendant un temps donné (cf. Afup\Tests\Behat\Bootstrap\WaitContext). |
Mopolo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C'est beaucoup mieux le wait que t'as fait là !
Faudra voir à l'usage si on besoin de setup du retry auto de ces tests.
Quelques remarques encore mais je trouve qu'on approche du merge :)
| 'scale' => 2, | ||
| ])->add('unitPrice', NumberType::class, [ | ||
| 'label' => 'Prix unitaire HT', | ||
| 'required' => false, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Vu que les lignes peuvent maintenant être ajoutées dynamiquement, pourquoi ne pas forcer les colonnes non-nullables ?
Là ça veut dire que si je clic sur le bouton pour en ajouter 3 et que j'en rempli 2, la 3ème sera ignorée.
Avec l'ancien système ça ne posait pas de soucis vu que les 5 étaient en dur. Mais là je trouve ça dommage et contre-intuitif, on n'est plus sûr de ce qui sera enregistré ou pas.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
les champs sont maintenant requis pour pouvoir valider le formulaire. La validation du navigateur va empêcher la soumission. Si une ligne est vide à la soumission, il faudra explicitement le retirer.
| $idsToRemove = $this->invoicingDetailRepository->getRowsIdsPerInvoicingId($quotation->getId()); | ||
| $existingIds = []; | ||
| $this->invoicingRepository->startTransaction(); | ||
| $this->unitOfWork->pushSave($quotation); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je ne maitrise pas du tout Ting, c'est nécessaire ça vu qu'il y a ça plus bas ?
$this->invoicingRepository->save($quotation);There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
L'utilisation de l'unitOfWork permet prendre en compte les modifications sur des entités de différents type sans pour autant passer par le "bon" repository.
Là les 2 repository sont déjà injecté alors ça ne faisait pas vraiment de sens d'injecter en plus l'unitOfWork. Je l'ai retiré.
9005b8b to
591ecd9
Compare
|
@Mopolo dans les test Behat on crée un devis sans remplir une seule ligne de détail. Est-ce que ce cas d'usage est vraiment représentatif ? |
35123e6 to
88c061b
Compare
88c061b to
4d9cec1
Compare
J'ai un peu modifié la gestions des lignes de devis sur la page d'ajout/modification d'un devis. On peut maintenant rajouter une ligne au besoin.
Avant :

Après :

La gestion des lignes est faite en javascript, pour pouvoir tester cel, j'ai dû rajouter la possibilité de faire des tests avec un vrai navigatuer. Les tests necessitant du javascript sont pilotés avec Behat via Panther sur le navigateur Chromium.